package com.css.fxfzypg.modules.maps.service;

import com.css.fxfzypg.modules.maps.entity.InfluencefliedFilesEntity;
import com.css.fxfzypg.modules.maps.queryParams.InfluencefliedQueryParams;
import com.css.fxfzypg.modules.maps.queryParams.MapQueryParams;

import java.util.List;
import java.util.Map;

public interface InfluencefliedMapService {
    //文件查询
    public List<InfluencefliedFilesEntity> getAllFile(InfluencefliedQueryParams queryParams);

    //全查询
    public Map<String,Object> getAllData(InfluencefliedQueryParams queryParams);

    //根据ID查询数据
    public Map<String,Object> getDataById(String id);

    /*根据任务ID逻辑删除导入影响场文件及物理删除相关数据*/
    public void deleteFileDataByTaskId(String taskId);

    //逻辑删除文件及物理删除相关数据
    public void deleteFileData(String taskId,String detailsId,List<String> ids, String userId);

    ///根据任务ID和detailsId逻辑删除导入影响场文件及物理删除相关数据
    public void deleteFileDataByTaskIdDetailsId(String taskId,String detailsId);

    //校验并保存
    public String checkSHPFiles(String taskId,String detailsId,String filePath, String formatDate, String userID);

    //更新导入影响场标识
    public int updateImportFlag(String taskId, String detailsId, String importFlag);

    //删除导入影响场标识
    public int updateAllImportFlag(String taskId, String detailsId, String importFlag);

    //查询全部导入影响场标识数量
    public int countAllImportFlag(String taskId);

    //获取导入地震影响场总面积（平方米）
    public String getSeismicInfluenceflyPbeArea(String influenceflyId);
}
